package com.ai.entity.alarm;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.beans.BeanUtils;

import java.util.Date;

/**
 * 页面查询返回值
 */
@Data
@Accessors(chain = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class RecordAlarmVO {

    /**
     * 主键,主键ID
     */
    private Long id;
    private Integer cameraId;

    /**
     * 摄像头名称
     */
    private String cameraNickname;

    /**
     * 功能表type
     */
    private String functionType;

    /**
     * 功能名称
     */
    private String functionNickname;

    /**
     * 抓拍照片路径
     */
    private String snapPhoto;

    /**
     * 视频回放路径
     */
    private String snapVideo;

    /**
     * 是否误报（1.正确，2.错误）
     */
    private Integer isError;

    /**
     * 是否违章（1.未违章，2.违章）
     */
    private Integer isState;

    /**
     * 带钢号
     */
    private String stripNo;

    /**
     * 来料钢卷号
     */
    private String originalSprayNo;

    /**
     * 识别钢卷号
     */
    private String detectionSprayNo;

    /**
     * 带钢宽度
     */
    private Double stripWidth;

    /**
     * 偏移量
     */
    private Double offset;

    /**
     * 检测次数
     */
    private Integer detectionTimes;

    /**
     * 信号表主键
     */
    private Integer logId;

    /**
     * 数据添加时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 备注
     */
    private String remark;

    /**
     * 分产线区域
     */
    private Integer subgroup;

    /**
     * 0.正常
     * 1.遮挡
     * 2.丢帧
     */
    private Integer isValid = 0;
    private Integer duration = 0;

    /**
     * 审核意见
     */
    private String reviewComments;


    /**
     * 区域名
     */
    private String regionName;

    public static RecordAlarmVO convertPOToVO(RecordAlarmPO alarmPO) {
        RecordAlarmVO alarmVO = new RecordAlarmVO();
        BeanUtils.copyProperties(alarmPO, alarmVO);
        return alarmVO;
    }
}
